const express = require("express")
const app = express()

// 详细的 CORS 配置
const cors = require("cors")
app.use(cors({
    origin: '*', // 允许所有域名，或者指定 'http://localhost' 等
    methods: ['GET', 'POST', 'PUT', 'DELETE'],
    allowedHeaders: ['Content-Type', 'Authorization'],
    credentials: true//允许发送 cookies 和认证信息//允许跨域请求携带这些身份证明信息
}))

app.use(express.json())
app.use(express.urlencoded({ extended: false }))

// 添加响应头中间件
//手动设置 CORS（跨域资源共享） 的中间件
app.use((req, res, next) => {
    // 1. 允许所有域名跨域访问
    res.header('Access-Control-Allow-Origin', '*')
     // 2. 允许的请求头
    res.header('Access-Control-Allow-Headers', 'Content-Type, Authorization')
    // 3. 允许的 HTTP 方法
    res.header('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE')
    // 4. 继续处理后续中间件
    next()
})
//导入用户路由模块
const userRouter = require('./router/user')
//将所有 /api 开头的请求路由到 userRouter
app.use('/api', userRouter)

//服务器监听 3007 端口
app.listen(3007, () => {
    console.log("api server running at http://127.0.0.1:3007")
})
